//
//  NSObject+DrawLine.h
//  高仿暴走斗图
//
//  Created by key on 16/3/15.
//  Copyright © 2016年 huangsongyao. All rights reserved.
//

#import <Foundation/Foundation.h>

//划线的枚举,类型为top、bottom、left、right四个方向的线条
typedef NS_ENUM(NSUInteger, kDrawLineType) {
    /**
     *  全部划线(AllLine)
     */
    kDrawLineTypeAll,
    /**
     *  只划线顶部(onlyTop)
     */
    kDrawLineTypeTop,
    /**
     *  只划线底部(onlyBottom)
     */
    kDrawLineTypeBottom,
    /**
     *  只划线左边(onlyLeft)
     */
    kDrawLineTypeLeft,
    /**
     *  只划线右边(onlyRight)
     */
    kDrawLineTypeRight,
    /**
     *  全部不划线(NoneLine)
     */
    kDrawLineTypeNone,
    /**
     *  划线顶部和底部(topAndBottom)
     */
    kDrawLineTypeTopAndBottom,
    /**
     *  划线顶部和左边(topAndLeft)
     */
    kDrawLineTypeTopAndLeft,
    /**
     *  划线顶部和右边(topAndRight)
     */
    kDrawLineTypeTopAndRight,
    /**
     *  划线左边和底部(LeftAndBottom)
     */
    kDrawLineTypeLeftAndBottom,
    /**
     *  划线左边和右边(LeftAndRight)
     */
    kDrawLineTypeLeftAndRight,
    /**
     *  划线底部和右边(BottomAndRight)
     */
    kDrawLineTypeBottomAndRight,
    /**
     *  只有顶部不划线(onlyNoneTop)
     */
    kDrawLineTypeNoneTop,
    /**
     *  只有左边不划线(onlyNoneLeft)
     */
    kDrawLineTypeNoneLeft,
    /**
     *  只有底部不划线(onlyNoneBottom)
     */
    kDrawLineTypeNoneBottom,
    /**
     *  只有右边不划线(onlyNoneRight)
     */
    kDrawLineTypeNoneRight,
};


@interface NSObject (DrawLine)

/**
 *  画线，默认为top、bottom、left、right四个方向的线条
 *
 *  @param rect      画线的线框区域
 *  @param lineColor 线条颜色
 *  @param alpha     线条透明度
 *  @param lWidth    线条粗细
 *  @param lineType  画线类型，枚举
 */
+ (void)drawLineWithRect:(CGRect)rect lineColor:(UIColor *)lineColor alpha:(CGFloat)alpha lWidth:(CGFloat)lWidth lineType:(kDrawLineType)lineType;

/**
 *  画线，随意画线
 *
 *  @param startpoint 线条的起点
 *  @param endPoint   线条的终点
 *  @param color      线条的颜色
 *  @param alpha      线条的透明度
 *  @param lWidth     线条的粗细
 */
+ (void)drawLineWithStartPoint:(CGPoint)startpoint endPoint:(CGPoint)endPoint color:(UIColor *)color alpha:(CGFloat)alpha lWidth:(CGFloat)lWidth;

@end
